/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package EA_Model.IEC61970.Wires;

import EA_Model.IEC61970.Domain.Conductance;
import EA_Model.IEC61970.Domain.Reactance;
import EA_Model.IEC61970.Domain.Resistance;
import EA_Model.IEC61970.Domain.Susceptance;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>AC Line Segment</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getB0ch <em>B0ch</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getBch <em>Bch</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getG0ch <em>G0ch</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getGch <em>Gch</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getR <em>R</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getR0 <em>R0</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getX <em>X</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.ACLineSegment#getX0 <em>X0</em>}</li>
 * </ul>
 * </p>
 *
 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment()
 * @model
 * @generated
 */
public interface ACLineSegment extends Conductor {
	/**
	 * Returns the value of the '<em><b>B0ch</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>B0ch</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>B0ch</em>' reference.
	 * @see #setB0ch(Susceptance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_B0ch()
	 * @model ordered="false"
	 * @generated
	 */
	Susceptance getB0ch();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getB0ch <em>B0ch</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>B0ch</em>' reference.
	 * @see #getB0ch()
	 * @generated
	 */
	void setB0ch(Susceptance value);

	/**
	 * Returns the value of the '<em><b>Bch</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Bch</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Bch</em>' reference.
	 * @see #setBch(Susceptance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_Bch()
	 * @model ordered="false"
	 * @generated
	 */
	Susceptance getBch();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getBch <em>Bch</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Bch</em>' reference.
	 * @see #getBch()
	 * @generated
	 */
	void setBch(Susceptance value);

	/**
	 * Returns the value of the '<em><b>G0ch</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>G0ch</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>G0ch</em>' reference.
	 * @see #setG0ch(Conductance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_G0ch()
	 * @model ordered="false"
	 * @generated
	 */
	Conductance getG0ch();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getG0ch <em>G0ch</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>G0ch</em>' reference.
	 * @see #getG0ch()
	 * @generated
	 */
	void setG0ch(Conductance value);

	/**
	 * Returns the value of the '<em><b>Gch</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Gch</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Gch</em>' reference.
	 * @see #setGch(Conductance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_Gch()
	 * @model ordered="false"
	 * @generated
	 */
	Conductance getGch();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getGch <em>Gch</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Gch</em>' reference.
	 * @see #getGch()
	 * @generated
	 */
	void setGch(Conductance value);

	/**
	 * Returns the value of the '<em><b>R</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>R</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>R</em>' reference.
	 * @see #setR(Resistance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_R()
	 * @model ordered="false"
	 * @generated
	 */
	Resistance getR();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getR <em>R</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>R</em>' reference.
	 * @see #getR()
	 * @generated
	 */
	void setR(Resistance value);

	/**
	 * Returns the value of the '<em><b>R0</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>R0</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>R0</em>' reference.
	 * @see #setR0(Resistance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_R0()
	 * @model ordered="false"
	 * @generated
	 */
	Resistance getR0();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getR0 <em>R0</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>R0</em>' reference.
	 * @see #getR0()
	 * @generated
	 */
	void setR0(Resistance value);

	/**
	 * Returns the value of the '<em><b>X</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>X</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>X</em>' reference.
	 * @see #setX(Reactance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_X()
	 * @model ordered="false"
	 * @generated
	 */
	Reactance getX();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getX <em>X</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>X</em>' reference.
	 * @see #getX()
	 * @generated
	 */
	void setX(Reactance value);

	/**
	 * Returns the value of the '<em><b>X0</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>X0</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>X0</em>' reference.
	 * @see #setX0(Reactance)
	 * @see EA_Model.IEC61970.Wires.WiresPackage#getACLineSegment_X0()
	 * @model ordered="false"
	 * @generated
	 */
	Reactance getX0();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Wires.ACLineSegment#getX0 <em>X0</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>X0</em>' reference.
	 * @see #getX0()
	 * @generated
	 */
	void setX0(Reactance value);

} // ACLineSegment
